#include "led.h"

/* SOS灯 PF.2 */

/*
 *函数名称:LED_Init
 *函数功能:初始化LED模块
 *参数:无
 *返回值:无
 *备  注:无
 */
void LED_Init(void)
{
    GPIO_InitTypeDef GPIO_InitStructure;

    // 使能GPIOE
    RCC_APB2PeriphClockCmd(LED0_GPIO_CLK | SOS_LED_GPIO_CLK, ENABLE);

    // LED0 PE.6
    GPIO_InitStructure.GPIO_Pin = LED0_GPIO_PIN;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; // 推挽输出
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_Init(LED0_GPIO_PORT, &GPIO_InitStructure); // 初始化GPIOE
    GPIO_SetBits(LED0_GPIO_PORT, LED0_GPIO_PIN);    // PE.6 输出高电平 （关灯）

    // SOS_LED PF.2
    GPIO_InitStructure.GPIO_Pin = SOS_LED_GPIO_PIN;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; // 推挽输出
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_Init(SOS_LED_GPIO_PORT, &GPIO_InitStructure);   // 初始化GPIOB
    GPIO_ResetBits(SOS_LED_GPIO_PORT, SOS_LED_GPIO_PIN); // PF.2 输出低电平 （关灯）
}

/*
 *函数名称:SOS_LOOP
 *函数功能:SOS灯循环闪烁
 *参数:无
 *返回值:无
 *备  注:无
 */
void SOS_LED_LOOP(void)
{
    SOS_LED = 1;
    delay_ms(50);
    SOS_LED = 0;
    delay_ms(50);
}
/*
 *函数名称:SOS_LED_OFF
 *函数功能:关闭SOS灯
 *参数:无
 *返回值:无
 *备  注:无
 */
void SOS_LED_OFF(void)
{
    SOS_LED = 0;
}

/*
 *函数名称:LED0_LOOP_ON
 *函数功能:LED0灯循环闪烁
 *参数:无
 *返回值:无
 *备  注:无
 */
void LED0_LOOP_ON(void)
{
    LED0 = 0;
    delay_ms(50);
    LED0 = 1;
    delay_ms(50);
}

/*
 *函数名称:LED0_OFF
 *函数功能:关闭LED0灯
 *参数:无
 *返回值:无
 *备  注:无
 */
void LED0_OFF(void)
{
    LED0 = 1; // 关闭LED0
}
